namespace RAG.Application.Dtos;

/// <summary>
/// 角色详情DTO
/// </summary>
public class RoleDetailDto
{
    public Guid Id { get; set; }
    public string RoleName { get; set; } = string.Empty;
    public string? RoleDescription { get; set; }
    public DateTime CreatedAt { get; set; }
    public DateTime UpdatedAt { get; set; }
    
    /// <summary>
    /// 角色权限列表
    /// </summary>
    public List<PermissionDto> Permissions { get; set; } = new List<PermissionDto>();
    
    /// <summary>
    /// 角色用户数量
    /// </summary>
    public int UserCount { get; set; }
    
    /// <summary>
    /// 角色权限数量
    /// </summary>
    public int PermissionCount { get; set; }
    
    /// <summary>
    /// 角色是否启用
    /// </summary>
    public bool IsActive { get; set; }
}

/// <summary>
/// 权限DTO
/// </summary>
public class PermissionDto
{
    public Guid Id { get; set; }
    public string PermissionCode { get; set; } = string.Empty;
    public string PermissionName { get; set; } = string.Empty;
    public string? PermissionDescription { get; set; }
} 